[VB解题]编写程序找出所有小于1000的完数

来源:百度知道 编辑:UC知道 时间:2024/05/23 11:12:40
新建一个工程,编写程序找出所有小于1000的完数。一个数如果恰好等于它的因子之和,这个数称为完数。一个数的因子是指除了该数本身以外能被其整除的数
要用到function过程
单击“查找”按钮,在列表框中显示所有满足条件的完数
程序中应包含一个过程,用于判断某个数是否是完数

Private Sub Command1_Click()
Dim N As Long
For N = 2 To 1000
If YinZi(N) = N Then
List1.AddItem N
End If
Next N
End Sub

Private Function YinZi(ByVal N As Long) As Long
Dim i As Long, S As Long
YinZi = 1
For i = 2 To N / 2
If N Mod i = 0 Then YinZi = YinZi + i
Next i
End Function

====用VB编写代码如下=====
Dim i As Integer
Dim j As Integer
Dim intSum As Integer
For i = 1 To 1000
intSum = 0
For j = 1 To Int(i / 2)
If i Mod j = 0 Then intSum = intSum + j
Next j
If intSum = i Then Print i
Next i

Dim i As Integer
Dim j As Integer
Dim intSum As Integer
For i = 1 To 1000
intSum = 0
For j = 1 To Int(i / 2)
If i Mod j = 0 Then intSum = intSum + j
Next j
If intSum = i Then Print i
Next i

运行结果:

6,28,496,